java 封装rtp流 您所在的位置:网站首页 opencv rtp java 封装rtp流

java 封装rtp流

#java 封装rtp流| 来源: 网络整理| 查看: 265

下面是RTP实现FU-A分包方式的代码,其中每个包的大小是1400字节。注释比较全面,看代码就行

private void sendData(byte[] r, int h264len)throws IOException { memset(sendbuf, 0, 1500); sendbuf[1] = (byte) (sendbuf[1] | 96); // 负载类型号96,其值为:01100000 sendbuf[0] = (byte) (sendbuf[0] | 0x80); // 版本号,此版本固定为2 sendbuf[1] = (byte) (sendbuf[1] & 254); //标志位,由具体协议规定其值,其值为:01100000 sendbuf[11] = 10;//随机指定10,并在本RTP回话中全局唯一,java默认采用网络字节序号 不用转换(同源标识符的最后一个字节) if (h264len 5)) packageSize) { int k = 0, l = 0; k = h264len / packageSize; l = h264len % packageSize; int t = 0; ts_current = ts_current + timestamp_increse; System.arraycopy(intToByte(ts_current), 0, sendbuf, 4, 4);//时间戳,并且倒序 { byte temp = 0; temp = sendbuf[4]; sendbuf[4] = sendbuf[7]; sendbuf[7] = temp; temp = sendbuf[5]; sendbuf[5] = sendbuf[6]; sendbuf[6] = temp; } while (t 5)) 5)) 5)) > 8; } return b; }

  h264每个NAL单元去掉起始符之后,直接将NAL单元数据作为sendData()的参数,就可以直接发送了。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有